<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<ui:composition xmlns:ui="http://java.sun.com/jsf/facelets"
                xmlns:p="http://primefaces.prime.com.tr/ui"
                template="#{man.skin0Culomns}"
                xmlns:h="http://java.sun.com/jsf/html"
                xmlns:f="http://java.sun.com/jsf/core">

    <ui:define name="center">
        <h:form id="addUserForm">
            <h1 class="title ui-widget-header ui-corner-all">#{ml.tr("Registrace nového uživatele")}</h1>
            <p:messages />
            <p:wizard id="wiz" widgetVar="wiz" nextLabel="#{ml.tr("Další")}" backLabel="Zpět"
                      flowListener="#{secureUserAdd.onFlowProcess}" style="width: 600px;">
                <p:tab title="Poviné údaje" id="personal">

                    <p:panel header="Poviné údaje">

                        <p:messages id="msgs" showDetail="false"/>

                        <h:panelGrid columns="3" columnClasses="label, value" styleClass="grid">

                            <h:outputText value="Jméno: *" />
                            <p:inputText required="true" label="Jméno"
                                         value="#{secureUserAdd.user.firstname}"
                                         requiredMessage="Jméno je povinná položka"/>
                            <h:outputText />

                            <h:outputText value="Příjmení *" />
                            <p:inputText required="true" label="Příjmení"
                                         value="#{secureUserAdd.user.lastname}"
                                         requiredMessage="Příjmení je povinná položka"/>
                            <h:outputText />

                            <h:outputText value="Email: *" />
                            <p:inputText required="true" label="Email"
                                         value="#{secureUserAdd.user.email}"
                                         title="Email bude sloužit jako přihlašovací jméno."
                                         requiredMessage="Email je povinná položka">
                                <p:ajax event="blur" process="@this" update="emailMsg" />
                            </p:inputText>
                            <h:outputText id="emailMsg" styleClass="error"
                                          value="#{secureUserAdd.emailMsg}"/>

                            <h:outputText value="Email znovu: *" />
                            <p:inputText label="EmailStamp"
                                         value="#{secureUserAdd.emailStamp}" >
                                <p:ajax event="blur" update="emailStampMsg" />
                            </p:inputText>
                            <h:outputText id="emailStampMsg"
                                          value="#{secureUserAdd.emailStampMsg}"
                                          styleClass="error"/>

                            <h:outputText value="Heslo: *" />
                            <p:password id="password1" feedback="true" minLength="5"
                                        promptLabel="Vlož své heslo. Heslo musí obsahovat alespoň 5 znaků."
                                        weakLabel="Slabá úroveň hesla. Použitím velkých i malých písmena a číslic zvětšíte úroveň zabezpečení."
                                        goodLabel="Středně silné heslo."
                                        strongLabel="Silné heslo."
                                        value="#{secureUserAdd.user.passwd}"
                                        required="true"
                                        requiredMessage="Heslo je povinná položka"
                                        validatorMessage="Heslo neobsahuje alespoň 5 znaků.">
                                
                            </p:password>
                            <h:outputText />

                            <h:outputText value="Heslo znovu: *" />
                            <p:password feedback="false" minLength="5"
                                        value="#{secureUserAdd.passwordStamp}"
                                        inline="true" />
                            <h:outputText />

                            <h:outputText value="Přeskočit na poslední krok: " />
                            <h:selectBooleanCheckbox value="#{secureUserAdd.skip}" />
                        </h:panelGrid>
                    </p:panel>
                </p:tab>

                <p:tab title="Adresa" id="address">
                    <p:panel header="Adresa">

                        <h:messages errorClass="error"/>

                        <h:panelGrid columns="2" columnClasses="label, value">
                            <h:outputText value="Ulice: " />
                            <p:inputText value="#{secureUserAdd.user.street}" />

                            <h:outputText value="PSČ: " />
                            <p:inputText value="#{secureUserAdd.user.postalCode}" />

                            <h:outputText value="Město " />
                            <p:inputText value="#{secureUserAdd.user.city}" />

                            <h:outputText value="Přeskočit na poslední krok: " />
                            <h:selectBooleanCheckbox value="#{secureUserAdd.skip}" />
                        </h:panelGrid>
                    </p:panel>
                </p:tab>

                <p:tab title="Kontakt" id="contact">
                    <p:panel header="Kontaktn">

                        <h:messages errorClass="error"/>

                        <h:panelGrid columns="2" columnClasses="label, value">

                            <h:outputText value="Phone: " />
                            <p:inputText value="#{secureUserAdd.user.phone}"/>

                            <h:outputText value="Additional Info: " />
                            <p:inputText value="#{secureUserAdd.user.info}"/>
                        </h:panelGrid>
                    </p:panel>
                </p:tab>

                <p:tab title="Potvrzení" id="confirm">
                    <p:panel header="Potvrzení">

                        <p:growl id="growl" sticky="true" showDetail="true"/>

                        <h:panelGrid id="confirmation" columns="6">
                            <h:outputText value="Jméno " />
                            <h:outputText styleClass="outputLabel"
                                          value="#{secureUserAdd.user.firstname}" />

                            <h:outputText value="Příjmení " />
                            <h:outputText  styleClass="outputLabel"
                                           value="#{secureUserAdd.user.lastname}"/>

                            <h:outputText value="Ulice " />
                            <h:outputText styleClass="outputLabel"
                                          value="#{secureUserAdd.user.street}" />

                            <h:outputText value="PSČ: " />
                            <h:outputText styleClass="outputLabel"
                                          value="#{secureUserAdd.user.postalCode}" />

                            <h:outputText value="Město " />
                            <h:outputText styleClass="outputLabel"
                                          value="#{secureUserAdd.user.city}" />

                            <h:outputText value="Email: " />
                            <h:outputText styleClass="outputLabel"
                                          value="#{secureUserAdd.user.email}" />

                            <h:outputText value="Telefon: " />
                            <h:outputText styleClass="outputLabel"
                                          value="#{secureUserAdd.user.phone}"/>

                            <h:outputText value="Informace: " />
                            <h:outputText styleClass="outputLabel"
                                          value="#{secureUserAdd.user.info}" />

                            <h:outputText />
                            <h:outputText />
                        </h:panelGrid>

                        <p:commandButton value="Uložit" update="growl"
                                         actionListener="#{secureUserAdd.save}">
                            <f:setPropertyActionListener value="password1"
                                                             target="#{secureUserAdd.user.passwd}" />
                        </p:commandButton>

                    </p:panel>
                </p:tab>

            </p:wizard>


            <p:ajaxStatus>
                <f:facet name="start">
                    <h:graphicImage value="#{man.baseUrl}resources/ajaxloading.gif" />
                </f:facet>

                <f:facet name="complete">
                    <h:outputText value="" />
                </f:facet>
            </p:ajaxStatus>
        </h:form>
    </ui:define>

</ui:composition>
